草庐IT

PhpUnit 模拟 : function undefined

全部标签

php - 如何在 Prophecy 中模拟相同的方法,以便它在每次调用中返回不同的响应

在纯PHPUnit模拟中,我可以做这样的事情:$mock->expects($this->at(0))->method('isReady')->will($this->returnValue(false));$mock->expects($this->at(1))->method('isReady')->will($this->returnValue(true));我无法使用Prophecy做同样的事情。可能吗? 最佳答案 您可以使用:$mock->isReady()->willReturn(false,true);显然它没有记录(

php - Perl 中 md5 函数的 PHP 模拟是什么?

我有一个Perl脚本,我需要将它转换为PHP。Perl中md5函数的PHP模拟是什么?Perl脚本:$hash=md5($str1,$str2);PHP脚本:$hash=md5($str1.$str2);我在$hash中有不同的值。我如何在PHP中获得相同的$hash值?谢谢。 最佳答案 看起来您正在使用二进制格式输出的perl版本:http://perldoc.perl.org/Digest/MD5.htmlmd5($data,...)Thisfunctionwillconcatenateallarguments,calculat

PHPUnit 代码覆盖率显示 0%

对于我的一个库(source),我配置了PHPunit如下:tests/Phpreboot/Stopwatchsrc/Phpreboot/Stopwatch在上面source,phpunit.xml.dist被简单地复制为phpunit.xml。我的代码覆盖率报告正在生成,但报告显示代码覆盖率为0%。然而,根据测试(检查源代码)我确定它必须超过0%。有人可以建议我的配置哪里出了问题吗?第一条评论后编辑测试用例:https://github.com/phpreboot/stopwatch/blob/master/tests/Phpreboot/Stopwatch/StopWatchTes

php - 使用 PHPUnit 和 Selenium 设置测试

你能帮我设置我的测试环境吗?我在Ubuntu上运行,安装(并运行)了selenium网络服务器,并使用PHPUnit我正在执行我的测试。很可能我遇到了一些小错误,但我现在不知道如何解决它。我的代码很简单classWebTestextendsPHPUnit_Extensions_Selenium2TestCase{protectedfunctionsetUp(){$this->setBrowser('firefox');$this->setBrowserUrl('http://www.google.com/');}publicfunctiontestTitle(){$this->url(

php - 无法卸载旧版本的 phpunit

我已经通过运行以下命令通过composer安装了PHPUnit:composerglobalrequire"phpunit/phpunit=4.8.*"我注意到安装了旧版本的phpunit(版本3.7.21),它随Windows的xampp一起提供。我正在尝试通过运行以下命令来卸载它:pearuninstallphpunit/PHPUnit失败并显示错误消息:未知channel“phpunit”在phpunit/PHPUnit。当我运行phpunit-v时,它显示版本为3.7.21,命令wherephpunit给出以下结果:如何在xampp中卸载phpunit?

php - Travis.ci 环境变量不在 phpunit 中读取

有人能帮我理解为什么我的环境变量没有在我的phpunit测试中从travis.ci中读取吗?所以我正在尝试使用travis为我正在开发的php/javascript应用程序编写一些自动测试。但是,当我编写测试以检查从travis读取到phpunit的环境变量时,它们失败了。这意味着(据我所知)环境变量无法被phpunit读取,或者它们没有正确传递给travis测试。.travis.ymllanguage:phpphp:-'7.0'-'7.1'before_install:-echo"extension=ldap.so">>php--ini|grep"LoadedConfiguratio

php - 如何使用 VSCode 在 Windows 的 CLI 上让 XDebug 与 PHPUnit 一起运行?

我运行了这个命令:"C:\xampp\php\.\php.exe""C:\xampp\php\phpunit"-dxdebug.profiler_enable=on-dxdebug.idekey=VSCODE/p>C:\xampp\php\php.ini有以下内容:[XDebug]zend_extension="C:\xampp\php\ext\php_xdebug-2.5.0-7.1-vc14.dll"xdebug.idekey=VSCODExdebug.profiler_enable=1xdebug.default_enable=1xdebug.remote_enable=1xde

php - 如何通过 phpunit.xml 从测试套件中包含/排除某些组

我想从测试套件中排除或包含某些测试。我想通过注释/组对此进行一些控制,而不是在phpunit.xml中命名特定文件或文件夹。我试过这样的事情,但它似乎忽略了和/或UnitIntegration/first-roundIntegration/first-round我不想为了适应这种情况而将测试移动到不同的文件夹,我也不想从CLI多次调用phpunit,我希望我可以通过xml配置实现所需的结果。 最佳答案 好的,首先应该看文档https://phpunit.de/manual/current/en/appendixes.configur

PHPUnit 文件命名约定

我刚刚开始在一些现有代码上试用phpunit。我们使用的命名约定是MyClass类应该在MyClass.class.php中。PHPUnit似乎要求该文件应称为MyClass.php。有什么办法解决这个问题吗?我在尝试生成骨架测试类时注意到它:phpunit--skeleton-testMyClass.classPHPUnit3.3.4bySebastianBergmann.Couldnotfindclass"MyClass.class"in"/home/jd/skeleton/classes/MyClass.class.php".Fatalerror:Calltoamemberfun

php - 用PHP模拟文件结构

我在共享的ApacheWeb服务器上运行PHP。我可以编辑.htaccess文件。我正在尝试模拟一个实际不存在的文件文件结构。例如,我想要URL:www.Stackoverflow.com/jimwiggly实际显示www.StackOverflow.com/index.php?name=jimwiggly我按照这篇文章中的说明编辑了我的.htaccess文件,走到了一半:PHP:Servepageswithout.phpfilesinfilestructure:RewriteEngineonRewriteRule^jimwiggly$index.php?name=jimwiggly在